package com.micro.modual.entity;

import javax.persistence.Id;

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;

/**
 * <h1>订单支付记录表表 micro_order_pay_serial</h1>
 *
 * @author levelcoder
 * @date 2020-08-04 00:11:10
 */
@ApiModel(description = "订单支付记录表")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "micro_order_pay_serial")
public class OrderPaySerial implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @ApiModelProperty(value = "主键编号")
    private Long id;


    /**
     * 支付类型 1.支付宝 2.微信 3.银联 4.钱包 5.混合
     */
    @ApiModelProperty(value = "支付类型 1.支付宝 2.微信 3.银联 4.钱包 5.混合")
    private Byte payType;


    /**
     * 订单编号
     */
    @ApiModelProperty(value = "订单编号")
    private String orderCode;


    /**
     * 订单总额
     */
    @ApiModelProperty(value = "订单总额")
    private BigDecimal orderPrice;


    /**
     * 实际支付金额
     */
    @ApiModelProperty(value = "实际支付金额")
    private BigDecimal payPrice;


    /**
     * 订单类型
     */
    @ApiModelProperty(value = "订单类型 ")
    private Byte orderType;


    /**
     * 支付详情:存储第三方支付渠道返回数据信息
     */
    @ApiModelProperty(value = "支付详情:存储第三方支付渠道返回数据信息")
    private String payDetail;


    /**
     * 支付回调订单号:冗余字段
     */
    @ApiModelProperty(value = "支付回调订单号:冗余字段")
    private String returnPayNo;


    /**
     * 支付记录状态1.待支付 2.支付中 3.支付成功 4.订单作废
     */
    @ApiModelProperty(value = "支付记录状态1.待支付 2.支付中 3.支付成功 4.订单作废")
    private Byte serialStatus;


    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createTime;


    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

}
